package com.up.cloudfeiyibackend.mapper;

import com.up.cloudfeiyibackend.dto.ItemPageDto;
import com.up.cloudfeiyibackend.entity.Inheritor;
import com.up.cloudfeiyibackend.entity.Item;
import com.up.cloudfeiyibackend.entity.ItemCategory;
import com.up.cloudfeiyibackend.entity.ItemDetail;
import com.up.cloudfeiyibackend.vo.ItemRegionVO;
import com.up.cloudfeiyibackend.vo.ItemVO;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface ItemMapper {
    /**
     * 分页查询非遗项目
     *
     * @return
     */
    List<Item> pageQuery(ItemPageDto dto);

    /**
     * 获取所有非遗项目分类
     *
     * @return
     */
    List<ItemCategory> getAllCategories();

    /**
     * 非遗项目浏览次数 +1
     *
     * @param itemId
     */
    void increaseViewCount(Long itemId);

    /**
     * 获取非遗项目详情
     *
     * @param itemId
     * @return
     */
    ItemDetail getDetailByItemId(Long itemId);

    /**
     *  获取所有非遗项目地区
     * @return
     */
    List<ItemRegionVO> listRegions();


    /**
     *
     * 根据id查找项目信息
     * @param itemId
     * @return
     */
    Item getItemByItemId(Long itemId);




    /**
     *
     * 获取该项目传承人信息
     * @param itemId
     * @return
     */
    List<Inheritor> getInheritor(Long itemId);
}
